<?php


include('bd.class.php');
$bd = new clase_bd();

class clase1 extends clase_bd{

	function con_bd(){
		//$con=mysql_connect("localhost","root","") or  die("Problemas en la conexion");
		//mysql_select_db("tareaje",$con) or die("Problemas con la BD"); 

return $this->con();
		}//con_bd
	
	
	
	function validar($dni, $pass){

		//$con=mysql_connect("localhost","root","") or  die("Problemas en la conexion");
		//mysql_select_db("tareaje",$con) or die("Problemas con la BD"); 
		$con=$this->con_bd();
		$sql="SELECT * FROM usuarios WHERE dni_usr = '".$dni."' and psw_usr = '".$pass."'";
		$result=mysql_query($sql,$con) or die("Problemas en el select:".mysql_error());
		$uri = mysql_fetch_array($result);
		
			if($uri{'dni_usr'}){return 1;}//if
			else{return 0;}//else
			
		}//validar

		
		function validar_adm($dni, $pass){

		//$con=mysql_connect("localhost","root","") or  die("Problemas en la conexion");
		//mysql_select_db("tareaje",$con) or die("Problemas con la BD"); 
		$con=$this->con_bd();
		$sql="SELECT * FROM usuarios WHERE dni_usr = '".$dni."' and psw_usr = '".$pass."'";
		$result=mysql_query($sql,$con) or die("Problemas en el select:".mysql_error());
		$uri = mysql_fetch_array($result);
		
			if($uri{'privilegio'}=='adm'){return 1;}//if
			else{return 0;}//else
			
		}//validar adm
		
		
		
		
	function validar_tipo($tipo, $fecha, $dni){
		$con=$this->con_bd();
		$sql="SELECT * FROM marcado WHERE dni = '".$dni."' and fecha = '".$fecha."' and tipo = '".$tipo."'";
		$result=mysql_query($sql,$con) or die("Problemas en el select:".mysql_error());
		$uri = mysql_fetch_array($result);
		
			if($uri{'fecha'}){return 0;}//if
			else{return 1;}//else
		
		}
		
		
	function marcar($dni, $fecha, $hora, $tipo){//agregar permiso luego
		
		if($this->validar_tipo($tipo, $fecha, $dni)){
				
		$con=$this->con_bd();
		$sql="insert into marcado(dni, fecha, hora, tipo) values ('".$dni."','".$fecha."','".$hora."','".$tipo."')";
		$result=mysql_query($sql,$con) or die("Problemas en el insert:".mysql_error());
		$tipo_h="";
		switch($tipo){
			case 1:$tipo_h='entrada'; break;
			case 2:$tipo_h='salida a refrigerio'; break;
			case 3:$tipo_h='regreso de refrigerio'; break;
			case 4:$tipo_h='salida'; break;
			}
		header("Location: ./index.php?msg=Se registro su ".$tipo_h." a las ".$hora." horas del dia de hoy.");
		}//if
		else{	
		$tipo_h="";
		switch($tipo){
			case 1:$tipo_h='entrada'; break;
			case 2:$tipo_h='salida a refrigerio'; break;
			case 3:$tipo_h='regreso de refrigerio'; break;
			case 4:$tipo_h='salida'; break;
			}
		header("Location: ./index.php?msg=Ya ha registrado su ".$tipo_h." a las ".$hora." horas del dia de hoy.");
		}
		
		}//marcar
	
	function cambia_clave($dni, $o_pass, $n_pass, $n2_pass){
	$claves_iguales = 0;
	$usuario_valido = 0;	
	
	$con=$this->con_bd();
		$sql = "update usuarios set psw_usr = '".$n_pass."' where dni_usr = '".$dni."' and psw_usr = '".$o_pass."'";
		
		if($n_pass==$n2_pass){$claves_iguales = 1;}
		if($this->validar($dni, $o_pass)){$usuario_valido=1;}
		
		if($claves_iguales==0){$this->imprime_pagina('chng_clave.php','Las_nuevas_claves_no_coinciden','0', '1');break;}		
		if($usuario_valido==0){$this->imprime_pagina('chng_clave.php', 'El_DNI_y_la_clave_no_coinciden', '0', '1');break;}
		
		$result=mysql_query($sql,$con) or die("Problemas al cambiar la clave:".mysql_error());
		if($result){
			$this->imprime_pagina('index.php', 'Se_cambio_la_clave_para_el_usuario_con_DNI:'.$dni, '0', '1');
			return 1;
//		header("Location: index.php?msg=Se modifico la clave para el usuario con DNI: ".$dni.".");		
		}
		}// cambia_clave
	
	function imprime_pagina($pagina, $msg, $tiempo, $modo){
		if($modo==1){//header
		header("Location: ./".$pagina."?msg=".$msg.".");
		}else if($modo==2){//jscript
		echo '<script language=Javascript> location.href=\\'.$pagina.'?msg='.$msg.'\\ </script>';
		}else{

			echo "<meta http-equiv='Refresh' content='".$tiempo.";url=".$pagina."?msg=".$msg.". />";
			}
	}
	
	function compara($a, $b){
		if($a==$b){
			return 1;
		}else{
			return 0;
			}
		}
		
		
		function listar_trabajadores_listbox(){
			$con=$this->con_bd();
			$sql = "select * from usuarios";
			
			$result=mysql_query($sql,$con) or die("Problemas en el select de usuarios:".mysql_error());
			
			$listbox = "<select name=\"trabajador\" id=\"usuario\" size=\"6\" multiple=\"multiple\" style=\"width:300px\">";

			while ($reg=mysql_fetch_array($result))
														{
			$listbox .= "<option value='".$reg['dni_usr']."'>".$reg['nombres']." ".$reg['apellidos']."</option>'";
    			
		}
			$listbox .= "</select>";
			return $listbox;
		}//function
		
		
		function who_dni($dni){
			
			$con=$this->con_bd();
			$sql = "select nombres from usuarios where dni_usr = $dni";
			$result=mysql_query($sql,$con) or die("Problemas en el select del usuario:".mysql_error());
			$nombre = mysql_fetch_row($result);
			return $nombre[0];
			
		}//who_dni
		
		
		
		function crea_session($usuario, $categoria, $estado){
			
			$_SESSION["usuario"] = $usuario;
			$_SESSION["categoria"] = $categoria;
			$_SESSION["estado"] = $estado;
			return 1;			
		}//crea session
		
		function borra_session($session){
			session_unregister($session);
		}//borra session
		
		
		function cuenta_usuarios(){
			$con = $this->con_bd();
			$sql_n_usuarios = 'select count(*) from usuarios';
			$result = mysql_query($sql_n_usuarios,$con) or die ("problemas al contar los usuarios:".mysql_error());
			$n = mysql_fetch_row($result);
			return $n[0];
		}
		
		function array_dnis(){
			$con = $this->con_bd();
			$n = array();
			$sql_dni_usuarios = 'select dni_usr from usuarios';
			$result = mysql_query($sql_dni_usuarios,$con) or die ("problemas al obtener los dnis de los usuarios:".mysql_error());
			while($row = mysql_fetch_array($result)){
				$n[]=$row[0];
			}
			return $n;	
		}
		
		function promedio_horas($dni, $tipo){
			$con = $this->con_bd();
			$sql = "SELECT AVG(hora) AS promedio FROM marcado where dni = '$dni' and tipo = " .$tipo;
			$result = mysql_query($sql,$con);
			$prom = mysql_fetch_row($result);
			return $prom[0];
			
		} 
		
		
		
	}//clase1

?>